// components/custom-modal/index.js
Component({
  data: {
    codeArray: ['', '', '', ''],
    focusArray:[true, false, false, false],
    countdown: 47 // 初始倒计时
  },
  properties: {
    show: { // 是否显示模态框（通过父组件控制）
      type: Boolean,
      value: false
    },
    countdown: {
       type: Number,
       value: ''
    },
    phone: {
      type: Number,
      value: ''
   },
   opentimes: {
       type: Function
   },
    title: { type: String, value: '提示' },
    content: { type: String, value: '' },
    showCancel: { type: Boolean, value: true }, // 是否显示取消按钮
    confirmText: { type: String, value: '确定' },
    cancelText: { type: String, value: '取消' }
  },
    /**
   * 生命周期函数--监听页面显示
   */
  onShow() {
    console.log(333)
  },
  methods: {
    cfyzms () {
      console.log('this', this)
      this.triggerEvent('opentimes', { action: 'opentimes' });
    },
    // 关闭模态框（触发父组件事件）
    handleClose() {
      this.triggerEvent('close', { action: 'close' });
    },
    handleConfirm() {
      this.triggerEvent('confirm', { action: 'confirm' });
    },
    handleCancel() {
      const arr = this.data.focusArray
      arr.forEach((item, index) => {
         arr[index] = false
       })
      this.setData({
       focusArray: arr,
       codeArray: ['', '', '', '']
      })
      this.triggerEvent('cancel', { action: 'cancel' });
    },
    handleInput(e) {
      const index = e.currentTarget.dataset.index;
      const value = e.detail.value;
      const codeArray = this.data.codeArray;
      codeArray[index] = value;
      this.setData({ codeArray });
      console.log('111')
      // 输入后聚焦下一个输入框
      if (value && index < 3) {
      const arr = this.data.focusArray
       arr.forEach((item, index) => {
          arr[index] = false
        })
        arr[Number(index)+1] = true
        console.log(arr)
       this.setData({
        focusArray: arr
       })
      }
      // 删除时聚焦前一个输入框
      if (!value && index > 0) {
        const arr = this.data.focusArray
        arr.forEach((item, index) => {
           arr[index] = false
         })
         arr[Number(index)-1] = true
         console.log(arr)
        this.setData({
         focusArray: arr
        })
      }
  
      // 检查是否输入完整（4位）
      if (codeArray.join('').length === 4) {
        // 这里处理验证码提交逻辑，例如：
        console.log('验证码输入完成：', codeArray.join(''));
        // 可调用接口验证验证码
        this.triggerEvent('success', { action: 'success' });
      }
    },
  }
});